#ifndef __FLOPPY_H
#define __FLOPPY_H


struct FLOPPY_GEOMETRY
{
	int sectors;	
	int heads;
	int track;
};

typedef struct fdisk
{
    char *name;
    char floppy_type;
    short base;
    int sr0;
    int motor_on;
    int track;
    int locked;
    struct FLOPPY_GEOMETRY * geometry;
} fdisk_t;

/* floppy.c */
void fdc_reset();
extern void get_floppy_type();
extern void init_floppy();
extern void floppy_ident();
extern void start_motor();
extern void stop_motor();
extern void wait_irq6();
extern void reset_floppy_controller();
extern void floppy_read_sectors(unsigned char *buf, int pos, int count);
extern void floppy_write_sector(unsigned char *buf, int pos, int read);
void irq6_handler(void);


#endif
